// 统一对 localStroage 做json存取操作

export const setItem = function (key, dataObj) {
  // 如果数据是对象或数组，则转成json字符串
  if (typeof dataObj === 'object') {
    dataObj = JSON.stringify(dataObj)
  }
  // 将数据保存到本地localStorage
  window.localStorage.setItem(key, dataObj)
}

// 2.读取数据的方法
export const getItem = function (key) {
  // 三种可能的值：null,json字符串，普通字符串
  const dataStr = window.localStorage.getItem(key)

  try {
    // 对字符串进行json转换成对象/数组，并返回
    return JSON.parse(dataStr)
  } catch (error) {
    // 如果转换失败，则直接返回读取的值
    return dataStr
  }
}

// 3.删除数据方法
export const removeItem = function (key) {
  window.localStorage.removeItem(key)
}
